#ifndef FOUNDATION_PROTOCOL_XCOMHANDLER_H
#define FOUNDATION_PROTOCOL_XCOMHANDLER_H
#include <map>
#include <memory>
#include "xcom_node.h"
#include "xcom_parser.h"

namespace protocol {

class XComHandler {
public:
	XComHandler();
	virtual ~XComHandler();

	static std::shared_ptr<XComHandler> GetXComInstance();

	bool LoadProtocol(const std::string &filePath);
	std::shared_ptr<XComNode> GetXComNode(const std::string &id);

private:
	XComParser xComParser_;
};
} // namespace protocol

#endif